#include <iostream>
using namespace std;
// 定义一个圆类（Circle），其中：
// 属性包括：
// 半径(radius)、周长(perim)和面积(area)，
// 方法包括：
// 构造函数（以半径为参数，默认值为0，周长和面积在构造函数中生成）
// 重载运算符 << ：输出半径、周长和面积。输出的格式为：
// “radius : 2; perim:12.56; area:12.56”
// 请编写Circle类的代码并使用以下main函数测试：
class Circle
{
    friend ostream& operator<<(ostream&, const Circle&);
public:
    Circle(double r = 0.0);
private:
    double _radius;
    double _perim;
    double _area;
};

Circle::Circle(double r)
    :_radius(r)
    , _perim(3.14 * 2 * r)
    , _area(3.14 * r * r)
{}

ostream& operator<<(ostream& out, const Circle& obj)
{
    return out << "radius:" << obj._radius << ";perim:" << obj._perim << ";area:" << obj._area;
}

int main()
{
    double r;
    while (cin >> r)
    {
        if (r > 0)
        {
            Circle c1(r);
            cout << c1 << endl;
        }
        else
        {
            Circle c2;
            cout << c2 << endl;
        }
    }
    return 0;
}
// 注：PI取值为3.14。
